![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 132 Pomógł: 0 Dołączył: 10.12.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Czy ktos wie czy sie da i jak to zrobic?
Chce przekazac zmienna z java script do skryptu php. Calosc znajduje sie w jednym pliku. Chce wyciagnac zmienna z js i w zaleznosci od jej wartosci wykonac odpowiedni kod php. Konkretnie mowiac jest to detektor flash. Na razie calosc dziela na zasadzie ze jezeli jest wtyczka to przekierowuje na 1 strone a jezeli nie ma to na 2 strone. Jednak ostatecznie chcialbym to wszystko zrobic w jednym pliku bez zadnego przekierowania. Tzn. jezeli js wykryje odpowiedni plugin to zmienna przyjmuje wartosc "ok" jezeli nie to "nie_ok". Nastepnie chcialbym odczytac te zmienna przez php i wykonac odpowiednia czesc kodu. |
|
|
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Możesz przekazać tą zmienną metodą GET (w linku).
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 132 Pomógł: 0 Dołączył: 10.12.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Chcialbym to rozwiazac innym sposobem.
Powiem o co chodzi. Spotakla mnie mala niespodzianka przy zglaszaniu stony do onetu - Infoseek nie indeksuje przekierowan. Robiac to na zasadzie http://www.jakisadres.pl/index.php?flash=ok http://www.jakisadres.pl/index.php?flash=nie_ok potraktuje to roniez jako przekierowanie. Czyli efekt taki sam jakby js przenosil na inny dokument. |
|
|
![]()
Post
#4
|
|
Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Hmm no to POSTem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
[xml:1:9358b0393d] <script language="JavaScript"> // taki schemat if( flash_mode == True ) { document.flash_detect.flash.value = 1; } else { document.flash_detect.flash.value = 0; } submit(); </script> <form name="flash_detect" action="stronka.php" method="post"> <input type="hidden" name="flash" value="0"> </form> [/xml:1:9358b0393d] Może coś takiego? Pisane z palca, więc nie wiem czy zadziała (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 132 Pomógł: 0 Dołączył: 10.12.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Niestety nie dziala :cry:
w ogole zmienna sie nie chce wysylac. |
|
|
![]()
Post
#6
|
|
Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Wieczorem sprawdzę kod, bo musi działać (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 132 Pomógł: 0 Dołączył: 10.12.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Oki (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
ja juz probowalem na kilku linijkach ale zmienna przekazac sie nie chce... nawet kiedy ja na statycznie przypisalem nic z tego nie wyszlo. ponizej kod detekcji wtyczki jaki obecnie uzywam: [xml:1:f4f3bf7cc3] <!-- Skrypt dla przegl±darek kompatybilnych z Gecko oraz dla Opery --> <script language="JavaScript" type="text/JavaScript"> majorVersion=6; minorVersion=21; contentPage="retro.php"; installPage="info.htm"; if(navigator.product=='Gecko' || navigator.userAgent.indexOf('Opera')!=-1) { if(plugin=navigator.plugins["Shockwave Flash"]) { if(majorVersion > parseInt(plugin.description.substr(plugin.description.indexOf(".")-1, 1)) || minorVersion > parseInt(plugin.description.substr(plugin.description.length-2)) ) window.location.replace(installPage); else window.location.replace(contentPage); } else { window.location.replace(installPage); } } </script> <!-- Skrypt dla Microsoft Internet Explorera --> <script language="VBScript"> On Error Resume Next 'wył±czenie powiadamiania o błedach isFlash=IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & majorVersion)) 'utworzenie obiektu If isFlash Then 'sprawdzenie czy obiekt został utworzony Window.Location=contentPage Else Window.Location=installPage End If </script> [/xml:1:f4f3bf7cc3] wyobrazam to sobie tak ze zamiast linijek [xml:1:f4f3bf7cc3] window.location.replace(contentPage); window.location.replace(installPage); Window.Location=contentPage Window.Location=installPage [/xml:1:f4f3bf7cc3] wstawie jakas zmienna... ... nastepnie w kodzie php zrobie prosta pentle [php:1:f4f3bf7cc3] <?php if ($zmienna=='ok'){ // tresc strony } elseif ($zmienna=='nok') { // info o braku plugina } else { // tutaj detekcja wg. powyzszego kodu } ?>[/php:1:f4f3bf7cc3] jak przesylalem zmienna przez GET: [xml:1:f4f3bf7cc3] contentPage="index.php?zmienna=ok"; installPage="index.php?zmienna=nok"; [/xml:1:f4f3bf7cc3] to dzialalo. |
|
|
![]()
Post
#8
|
|
Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Coś takiego wymodziłem:
index.php [xml:1:2f47e1f556]<html> <head> <script language="JavaScript" type="text/JavaScript"> majorVersion = 6; minorVersion = 21; flashMode = 0; if( navigator.product=='Gecko' || navigator.userAgent.indexOf('Opera') != -1 ) { if(plugin=navigator.plugins["Shockwave Flash"]) { if(majorVersion < parseInt(plugin.description.substr(plugin.description.indexOf(".")-1, 1)) || minorVersion < parseInt(plugin.description.substr(plugin.description.length-2)) ) flashMode = 1; } } </script> <script language="VBScript"> On Error Resume Next isFlash = IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & majorVersion)) If isFlash Then flashMode = 1 End If </script> </head> <body> <form name="flash_detect" action="index2.php" method="post"> <input type="hidden" name="flash" value="0"> <script language="JavaScript"> document.flash_detect.flash.value = flashMode; document.flash_detect.submit(); </script> </form> </body> </html>[/xml:1:2f47e1f556] no i w index2.php: [php:1:2f47e1f556]<?php print( $_POST['flash'] ); ?>[/php:1:2f47e1f556] |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 132 Pomógł: 0 Dołączył: 10.12.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Kurcze no dziala (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Dzieki, sam bym na to wpadl pewnie za jakies 10 lat (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 13:31 |